package br.com.evl.tecinfo.dao;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/**
 *
 * @author alysson
 */
public class BD {

    public Connection conexao;
    public Statement st;
    public ResultSet consulta;
    public String tabela;
    
    public BD(String tabela){
        conectarAoBD();
        criarConsulta(tabela);
        this.tabela = tabela;
    }
    
    public BD(){}

    public void conectarAoBD() {
        try {

            conexao = DriverManager.getConnection("jdbc:mysql://localhost/hora", "root", "646890");
            st = conexao.createStatement();
            

        } catch (SQLException ex) {

            System.out.println("Não foi possível conectar");
        }

    }

    public void criarConsulta(String tabela) {
        try {
            String a = "SELECT * FROM " + tabela;

            consulta = st.executeQuery(a);
            
            this.tabela = tabela;

        } catch (SQLException ex) {

            System.out.println("Ocorreu um erro ao consultar");
        }       
        
    }

    public String buscarRegistros(String colunaQueContemOsRegistros) {
        try {

            return consulta.getString(colunaQueContemOsRegistros);

        } catch (SQLException ex) {

            System.out.println("erro ao buscar dados");
        }
        return null;
    }

    public void setValores(String[] valores) {

        String inserir = "INSERT INTO " + tabela + " VALUES('";

        try {

            for (int i = 0; i < valores.length; i++) {



                if (i == valores.length - 1) {
                    inserir += valores[i] + "')";
                } else {
                    inserir += valores[i] + "', '";
                }               

            }

            st.executeUpdate(inserir);

            System.out.println("Valores inseridos com sucesso");

        } catch (SQLException ex) {

            System.out.println("erro ao inserir");
        }
    }
    
    public void removeValor(String chavePrimariaDaTabela, String valor){

        String remover = "DELETE FROM " + tabela + " WHERE " + chavePrimariaDaTabela + " = "+ valor;
        //System.out.println(remover);
        try {
            st.executeUpdate(remover);
            
        } catch (SQLException ex) {
            
            System.out.println("nao foi possivel remover");
        }
    }
 /*   public void editarValor(String chavePrimariaDaTabela, String valor, String novoValor){
        //UPDATE Cargo SET numero=5 WHERE numero=3;
        
        String remover = "UPDATE " + tabela + "SET" + chavePrimariaDaTabela + " = "+ novoValor+ " WHERE "+ ;

        
    }*/
}
